Zugriffsberechtigungen in .NET: Sicherheitslücken schließen

Wichtige Aspekte jeder Entwicklungsplattform sind Sicherheit und Zugriffskontrolle. Um Berechtigungen zu definieren, lassen sich Schlüsselwörter einsetzen. Der Artikel stellt die Zugriffsmodifizierer vor, die im .NET-Framework zur Verfügung stehen.

Zugriffsmodifizierer (access modifiers) sind ein integraler Bestandteil sachgemäßer objektorientierter Programmierung. Sie beruhen auf dem Konzept der Datenkapselung und dienen dem Ziel, Funktionen vor allen zu verbergen, die sie nicht sehen müssen. Zugriffsmodifizierer erlauben es dem Entwickler, festzulegen, wer Zugriff auf bestimmte Funktionen erhält – und wer nicht. Dabei bieten fünf Zugriffsebenen in C# und VB.NET ausreichend Kontrolle für jede Situation.

Die verschiedenen Zugriffsebenen

In .NET gibt es fünf Zugriffsebenen. Die erste Zugriffsebene bietet jedem uneingeschränkten Zugriff. Sie wird mit public bezeichnet. Alle als public definierte Klassen, Methoden oder Eigenschaften sind für jedweden anderen Code sichtbar. Die Klassen für ASP.NET-Seiten beispielsweise werden als public definiert, da auf sie zugegriffen werden muss, um die Seite darzustellen.

Das genaue Gegenteil dieses öffentlichen Zugriffs ist private. Damit bleibt der Zugriff auf die eigene Klasse beschränkt. Auf als private definierte Eigenschaften oder Methoden kann nur durch Code zugegriffen werden, der in derselben Klasse enthalten ist. Über abgeleitete oder andere Klassen kann nicht auf private-Elemente zugegriffen werden.

Zwischen public und private gibt es noch andere Zugriffsebenen. Die geschützte (protected) Ebene ermöglicht, dass Eigenschaften und Methoden, die als protected definiert sind, innerhalb der eigenen Klasse und allen von dieser abgeleiteten Klassen sichtbar sind.

Die nächste Ebene wird in VB.NET mit friend, in C# mit internal bezeichnet. Sie besagt, dass auf Eigenschaften und Methoden, die als friend oder internal definiert sind, durch jeglichen Code aller Klassen innerhalb des eigenen Assemblers zugegriffen werden kann.

Diese Ebene kann mit protected kombiniert werden, um Eigenschaften und Methoden zu definieren, die allen abgeleiteten Klassen und auch allen Klassen innerhalb des Assemblers zugänglich sind. Man nennt das gewöhnlich protected or friend/internal, da hier beide Ansätze unterstützt werden.

Diese fünf Zugriffsmodifizierer werden durch bestimmte Schlüsselwörter in VB.NET und C# unterstützt, wie im Folgenden zu sehen ist.

Themenseiten: .NET, Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Zugriffsberechtigungen in .NET: Sicherheitslücken schließen

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *